/**
 * 实体元数据类
 * 用于存储和管理实体的结构信息
 */
export class EntityMetadata<T = any> {
  /**
   * 实体类
   */
  private readonly entityClass: Function;

  /**
   * 实体名称
   */
  private readonly entityName: string;

  /**
   * 表名
   */
  private tableName: string;

  /**
   * 自动表创建配置
   */
  private autoTableConfig?: {
    immediate: boolean;
    force: boolean;
    ifNotExists: boolean;
    synchronize: boolean;
  };

  /**
   * 逻辑删除字段
   */
  private logicalDeleteField?: string;

  /**
   * 乐观锁字段
   */
  private versionField?: string;

  constructor() {
    this.entityClass = null as any as Function;
    this.entityName = ''
    this.tableName = ''
  }
}
